 /**********************************************************************//**
 \file NoteFrequency.h		\author belot nicolas (karrakis)
 \brief store relation beetwen note and frequency

 ************************************************************************//*
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
 ***************************************************************************/

#ifndef NOTE_FREQ_H
#define NOTE_FREQ_H 1
#include <string>
/*      Key	Freque_cy i_ Hz*/

/** frequency for B # 2 */
#define Bd2	261.6
/** frequency for C 3 */
#define	C_3	261.6
/** frequency for C # 3 */
#define Cd3	277.2
/** frequency for D b 3 */
#define Db3	277.2
/** frequency for D 3 */
#define	D_3	293.7
/** frequency for D # 3 */
#define Dd3	311.1
/** frequency for E b 3 */
#define Eb3	311.1
/** frequency for E 3 */
#define E_3	329.7
/** frequency for F b 3 */
#define Fb3	329.7
/** frequency for E # 3 */
#define Ed3	349.2
/** frequency for F 3 */
#define F_3	349.2
/** frequency for F # 3 */
#define Fd3	370.0
/** frequency for G b 3 */
#define Gb3	370.0
/** frequency for G 3 */
#define G_3	392.0
/** frequency for G # 3 */
#define Gd3	415.3
/** frequency for A b 3 */
#define Ab3	415.3
/** frequency for A 3 */
#define A_3	440.0
/** frequency for A # 3 */
#define Ad3	466.2
/** frequency for B b 3 */
#define Bb3	466.2
/** frequency for B 3 */
#define B_3	493.9
/** frequency for C b 4 */
#define Cb4	493.9

/*	Key	2(x/)octave*/
#define Bd1	Bd2/2
#define	C_2	C_3/2
#define Cd2	Cd3/2
#define Db2	Db3/2
#define	D_2	D_3/2
#define Dd2	Db3/2
#define Eb2	Eb3/2
#define E_2	E_3/2
#define Fb2	Fb3/2
#define Ed2	Ed3/2
#define F_2	F_3/2
#define Fd2	Fd3/2
#define Gb2	Gb3/2
#define G_2	G_3/2
#define Gd2	Gd3/2
#define Ab2	Ab3/2
#define A_2	A_3/2
#define Ad2	Ad3/2
#define Bb2	Bb3/2
#define B_2	B_3/2
#define Cb3	Cb4/2

#define Bd0	Bd1/2
#define	C_1	C_2/2
#define Cd1	Cd2/2
#define Db1	Db2/2
#define	D_1	D_2/2
#define Dd1	Db2/2
#define Eb1	Eb2/2
#define E_1	E_2/2
#define Fb1	Fb2/2
#define Ed1	Ed2/2
#define F_1	F_2/2
#define Fd1	Fd2/2
#define Gb1	Gb2/2
#define G_1	G_2/2
#define Gd1	Gd2/2
#define Ab1	Ab2/2
#define A_1	A_2/2
#define Ad1	Ad2/2
#define Bb1	Bb2/2
#define B_1	B_2/2
#define Cb2	Cb3/2

#define Cb0	Cb1/2
#define	C_0	C_1/2
#define Cd0	Cd1/2
#define Db0	Db1/2
#define	D_0	D_1/2
#define Dd0	Db1/2
#define Eb0	Eb1/2
#define E_0	E_1/2
#define Fb0	Fb1/2
#define Ed0	Ed1/2
#define F_0	F_1/2
#define Fd0	Fd1/2
#define Gb0	Gb1/2
#define G_0	G_1/2
#define Gd0	Gd1/2
#define Ab0	Ab1/2
#define A_0	A_1/2
#define Ad0	Ad1/2
#define Bb0	Bb1/2
#define B_0	B_1/2
#define Cb1	Cb2/2

#define Bd3	Bd2*2
#define	C_4	C_3*2
#define Cd4	Cd3*2
#define Db4	Db3*2
#define	D_4	D_3*2
#define Dd4	Db3*2
#define Eb4	Eb3*2
#define E_4	E_3*2
#define Fb4	Fb3*2
#define Ed4	Ed3*2
#define F_4	F_3*2
#define Fd4	Fd3*2
#define Gb4	Gb3*2
#define G_4	G_3*2
#define Gd4	Gd3*2
#define Ab4	Ab3*2
#define A_4	A_3*2
#define Ad4	Ad3*2
#define Bb4	Bb3*2
#define B_4	B_3*2
#define Cb5	Cb4*2

#define Bd4	Bd3*2
#define	C_5	C_4*2
#define Cd5	Cd4*2
#define Db5	Db4*2
#define	D_5	D_4*2
#define Dd5	Db4*2
#define Eb5	Eb4*2
#define E_5	E_4*2
#define Fb5	Fb4*2
#define Ed5	Ed4*2
#define F_5	F_4*2
#define Fd5	Fd4*2
#define Gb5	Gb4*2
#define G_5	G_4*2
#define Gd5	Gd4*2
#define Ab5	Ab4*2
#define A_5	A_4*2
#define Ad5	Ad4*2
#define Bb5	Bb4*2
#define B_5	B_4*2
#define Cb6	Cb5*2

#define Bd5	Bd4*2
#define	C_6	C_5*2
#define Cd6	Cd5*2
#define Db6	Db5*2
#define	D_6	D_5*2
#define Dd6	Db5*2
#define Eb6	Eb5*2
#define E_6	E_5*2
#define Fb6	Fb5*2
#define Ed6	Ed5*2
#define F_6	F_5*2
#define Fd6	Fd5*2
#define Gb6	Gb5*2
#define G_6	G_5*2
#define Gd6	Gd5*2
#define Ab6	Ab5*2
#define A_6	A_5*2
#define Ad6	Ad5*2
#define Bb6	Bb5*2
#define B_6	B_5*2
#define Cb7	Cb6*2

#define Bd6	Bd5*2
#define	C_7	C_6*2
#define Cd7	Cd6*2
#define Db7	Db6*2
#define	D_7	D_6*2
#define Dd7	Db6*2
#define Eb7	Eb6*2
#define E_7	E_6*2
#define Fb7	Fb6*2
#define Ed7	Ed6*2
#define F_7	F_6*2
#define Fd7	Fd6*2
#define Gb7	Gb6*2
#define G_7	G_6*2
#define Gd7	Gd6*2
#define Ab7	Ab6*2
#define A_7	A_6*2
#define Ad7	Ad6*2
#define Bb7	Bb6*2
#define B_7	B_6*2
#define Cb8	Cb7*2

#define Bd7	Bd6*2
#define	C_8	C_7*2
#define Cd8	Cd7*2
#define Db8	Db7*2
#define	D_8	D_7*2
#define Dd8	Db7*2
#define Eb8	Eb7*2
#define E_8	E_7*2
#define Fb8	Fb7*2
#define Ed8	Ed7*2
#define F_8	F_7*2
#define Fd8	Fd7*2
#define Gb8	Gb7*2
#define G_8	G_7*2
#define Gd8	Gd7*2
#define Ab8	Ab7*2
#define A_8	A_7*2
#define Ad8	Ad7*2
#define Bb8	Bb7*2
#define B_8	B_7*2
#define Cb9	Cb8*2

#define Bd8	Bd7*2
#define	C_9	C_8*2
#define Cd9	Cd8*2
#define Db9	Db8*2
#define	D_9	D_8*2
#define Dd9	Db8*2
#define Eb9	Eb8*2
#define E_9	E_8*2
#define Fb9	Fb8*2
#define Ed9	Ed8*2
#define F_9	F_8*2
#define Fd9	Fd8*2
#define Gb9	Gb8*2
#define G_9	G_8*2
#define Gd9	Gd8*2
#define Ab9	Ab8*2
#define A_9	A_8*2
#define Ad9	Ad8*2
#define Bb9	Bb8*2
#define B_9	B_8*2
#define Bd9	Bd8*2
#define Cb10	Cb9*2


#endif

